1. Field of the Invention
The present invention relates generally to a portable terminal, and more particularly to a system for providing multiple window environments in a portable terminal adopting a mobile computing system having a non-volatile memory and a method thereof.
2. Description of the Related Art
Typically, a mobile computing system, which is adopted in various kinds of portable terminals such as PDAs (Personal Digital Assistants), smart phones, etc., has one OS (Operating System) image installed in a programmable non-volatile memory. A flash memory is typically used as the programmable non-volatile memory.
FIG. 1 illustrates a memory map of a programmable non-volatile memory provided in a typical mobile computing system. The programmable non-volatile memory 100 has an area in which a boot loader 102, a kernel 104, a root file system 106, and a window system 108 are stored, and a storage area 110, used to store data required for the execution of the window system 108.
The boot loader 102 is a boot code having a size of about 100 Kbytes, which starts when a CPU (Central Processing Unit) is reset. The kernel 104 and the root file system 106 are the minimum OS codes required for the operation of the window system 108, and commonly have a size of about 3 Mbytes. The window system 108 is composed of a user interface, an application program, and commonly has a size of about 20 Mbytes to 30 Mbytes.
In the mobile computing system having a non-volatile memory 100 as described above, during a booting operation of the system, the boot loader 102 initializes the CPU, memory and peripheral devices (not illustrated), copies itself, the kernel 104 and the root file system 106 into a memory, i.e., RAM (Random Access Memory), and then assigns a control authority to the kernel 104.
Then, the kernel 104 activates a system service related to the OS, mounts the root file system 106, and then assigns the control authority to the root file system 106. The root file system 106 executes the window system 108 through its initialization routine. If the window system 108 is executed, all the system booting processes are terminated.
Since the mobile computing system is not adopted in devices such as a PC (Personal Computer) used in a fixed place or for a fixed purpose, but is adopted in a portable terminal that is carried by a user, its purpose may be repeatedly changed even during a day. By contrast, a typical mobile computing system has only one OS image as described above, and thus if the user intends to use an OS image having a new function according to the use environment, he/she must remove the existing OS image installed in the non-volatile memory, and install a different OS image instead.
The programmable non-volatile memory used in the mobile computing system has a memory capacity of more than 1 Gbytes, and this memory capacity is constantly increasing. However, since only about 40 Mbytes of memory are actually used, even if all the code areas and data storage area are put together as described above, the most of the available storage area may not be used unless a great amount of data such as a GPS (Global Positioning System) map is used in the mobile computing systems.